场景相机 Sample详情
最后更新时间:2019年6月17日
场景相机是一个虚拟镜头的概念,是用来描述三维场景中的视角的对象。通过相机Camera对象中的各项参数可以控制场景中展示的视图及其位置方向等。
可以通过手势交互来控制场景相机的航向角、俯仰角等参数,来实现不同视图效果。
也可以通过接口控制场景相机的位置、方向等。场景相机对应com.zondy.mapgis.android.sceneview.Camera类,由7个关键参数控制,对应7个字段属性:
字段 | 说明 |
---|---|
com.zondy.mapgis.core.geometry.Dot3D location | 相机地理坐标(坐标定义:X轴朝右,Y轴朝屏幕内,Z轴朝上) |
double headingAng | 方位角,范围是0-360度(绕Z轴以逆时针方向旋转) |
double pitchAng | 俯仰角 ,范围是-90至90度(绕X轴以逆时针方向旋转) |
double rollAng | 滚动角,范围是0-360度(绕Y轴以逆时针方向旋转) |
double fov | 视场角 |
double nearPlane | 设置近裁减面(不能为0,且不能和远裁减面的值相等) |
double farPlane | 设置远裁减面(不能设置为0,且不能和近裁减面的值相等) |
通过场景视图的setViewPointCamera()方法可设置场景视图的相机,由相机对象指定地理坐标、方位角、倾斜角、滚动角等参数。实现方法如下:
//构造场景相机对象,设置地理位置、方位角、俯仰角、滚动角 Camera camera=new Camera(); camera.setLocation(new Dot3D(100, 50, 600)); camera.setHeadingAng(60.0); camera.setPitchAng(80.0); camera.setRollAng(80.0); //为场景视图设置相机 mSceneView.setCamera(camera);